/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.science_item.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 项目Entity
 * @author hang
 * @version 2017-01-14
 */
public class TbScienceItem extends DataEntity<TbScienceItem> {
	
	private static final long serialVersionUID = 1L;
	private String itemSourse;		// 项目来源
	private String itemKind;		// 项目类别
	private String itemNum;		// 项目编号
	private String itemName;		// 项目名称
	private String itemPrincipal;		// 项目负责人
	private String startYearMon;		// 开始年月
	private String endYearMon;		// 结束年月
	private String itemMoney;		// 项目总经费
	private String accountMoney;		// 到账经费
	private String remark;		// 备注
	private String material;		// 证明材料
	private Date createTime;		// 创建时间
	private Date updateTime;		// 更新时间
	
	public TbScienceItem() {
		super();
	}

	public TbScienceItem(String id){
		super(id);
	}

	@Length(min=0, max=64, message="项目来源长度必须介于 0 和 64 之间")
	public String getItemSourse() {
		return itemSourse;
	}

	public void setItemSourse(String itemSourse) {
		this.itemSourse = itemSourse;
	}
	
	@Length(min=0, max=64, message="项目类别长度必须介于 0 和 64 之间")
	public String getItemKind() {
		return itemKind;
	}

	public void setItemKind(String itemKind) {
		this.itemKind = itemKind;
	}
	
	@Length(min=0, max=64, message="项目编号长度必须介于 0 和 64 之间")
	public String getItemNum() {
		return itemNum;
	}

	public void setItemNum(String itemNum) {
		this.itemNum = itemNum;
	}
	
	@Length(min=0, max=100, message="项目名称长度必须介于 0 和 100 之间")
	public String getItemName() {
		return itemName;
	}

	public void setItemName(String itemName) {
		this.itemName = itemName;
	}
	
	@Length(min=0, max=64, message="项目负责人长度必须介于 0 和 64 之间")
	public String getItemPrincipal() {
		return itemPrincipal;
	}

	public void setItemPrincipal(String itemPrincipal) {
		this.itemPrincipal = itemPrincipal;
	}
	
	@Length(min=0, max=64, message="开始年月长度必须介于 0 和 64 之间")
	public String getStartYearMon() {
		return startYearMon;
	}

	public void setStartYearMon(String startYearMon) {
		this.startYearMon = startYearMon;
	}
	
	@Length(min=0, max=64, message="结束年月长度必须介于 0 和 64 之间")
	public String getEndYearMon() {
		return endYearMon;
	}

	public void setEndYearMon(String endYearMon) {
		this.endYearMon = endYearMon;
	}
	
	@Length(min=0, max=64, message="项目总经费长度必须介于 0 和 64 之间")
	public String getItemMoney() {
		return itemMoney;
	}

	public void setItemMoney(String itemMoney) {
		this.itemMoney = itemMoney;
	}
	
	@Length(min=0, max=64, message="到账经费长度必须介于 0 和 64 之间")
	public String getAccountMoney() {
		return accountMoney;
	}

	public void setAccountMoney(String accountMoney) {
		this.accountMoney = accountMoney;
	}
	
	@Length(min=0, max=200, message="备注长度必须介于 0 和 200 之间")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	@Length(min=0, max=200, message="证明材料长度必须介于 0 和 200 之间")
	public String getMaterial() {
		return material;
	}

	public void setMaterial(String material) {
		this.material = material;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	
}